perm filename OVAL.MF[MF,ALS] blob
sn#571671 filedate 1981-03-23 generic text, type C, neo UTF8
COMMENT ā VALID 00007 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 "My Oval"
C00004 00003 "a: 1:1 Oval"
C00005 00004 "b: 1:1.5 Oval"
C00006 00005 "c: 1:2 Oval"
C00007 00006 "d: 1:2.5 Oval"
C00008 00007 "e: 1:3 Oval"
C00010 ENDMK
Cā;
"My Oval";
% fntmode; % this causes a font to be created for the XGP
ocmode; % this causes a font to be created for the DOVER
tfmmode; % this causes a TEX information file to be produced
proofmode;
drawdisplay;
titletrace; % this prints out quoted strings when they occur
w0=3; hpen;
pts=20; % Needed at this time for maxht below
pixels=5.3; % raster units per point for TEX on the DOVER maybe
maxht top0 pts.pixels. % tallest output in raster units
charht pts; charwd 3/2 pts; chardw round 3/2 pts.pixels;
sqrttwo=sqrt2; w1=9;
subroutine darc(index i,index j,var maxwidth):
y1=y5=yi; y2=y4=1/sqrttwo [yi,yj]; y3=yj;
x1=xi; x5=xj; x3=1/2[xi,xj];
x2=1/sqrttwo [x3,xi]; x4=1/sqrttwo [x3,xj];
hpen; draw|maxwidth|1{0,y3-y1}..|2/3[maxwidth,w0]|2{x3-x1,y3-y1}..
|w0#|3{x3-x1,0}..
|2/3[maxwidth,w0]|4{x5-x3,y5-y3}..|maxwidth|5{0,y5-y3}.
"a: 1:1 Oval";
charcode `a;
y1=0; y2=50; x2=0; y3=100;
x1=x3=100;
new w1; w1=9;
call `a darc(2,1,w1);
call `b darc(2,3,w1).
end.
"b: 1:1.5 Oval";
charcode `b;
y1=0; y2=50; x2=0; y3=100;
new w1; w1=11;
x1=x3=150;
call `a darc(2,1,w1);
call `b darc(2,3,w1).
"c: 1:2 Oval";
charcode `c;
y1=0; y2=50; x2=0; y3=100;
new w1; w1=13;
new x1; new x3; x1=x3=200;
call `a darc(2,1,w1);
call `b darc(2,3,w1).
"d: 1:2.5 Oval";
charcode `d;
y1=0; y2=50; x2=0; y3=100;
new w1; w1=15;
new x1; new x3; x1=x3=250;
call `a darc(2,1,w1);
call `b darc(2,3,w1).
"e: 1:3 Oval";
charcode `e;
y1=0; y2=50; x2=0; y3=100;
new w1; w1=17;
new x1; new x3; x1=x3=300;
call `a darc(2,1,w1);
call `b darc(2,3,w1).
end.